//
//  UIScrollView+RCKRefreshControl.h
//  Refresh
//
//  Created by weitayinqing on 15/9/28.
//  Copyright © 2015年 苏昌雄. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "RickyRefreshConst.h"

@class RickyRefreshNormal,RickyRefreshCoreTextView,RickyRefreshGifView;

@interface UIScrollView (RCKRefreshControl)
/**
 设置刷新控件是否可以用
 @param:enadbled:YES(可用)NO(不可用)
 */
- (void)setRefreshEndbled:(BOOL)enadled;

/**
 设置刷新头部控件是否可以用
 @param:enadbled:YES(可用)NO(不可用)
 */
- (void)setHeaderRefreshEndbled:(BOOL)enadled;

/**
 设置刷新控件新动作
 @param:begin:YES状态下：视图加载完成后,马上进行刷新动作，时间延长为0.7秒，NO状态下：其他情况下（例如数据请求失败，点击重新加载数据），让头部控件进行刷新动作。
 */
- (void)setHeaderRefreshAtBegin:(BOOL)begin;

/**
 设置刷新底部控件是否可以用
 @param:enadbled:YES(可用)NO(不可用)
 */
- (void)setFooterRefreshEndbled:(BOOL)enadled;

/**
 添加一个普通的上拉刷新控件
 @param:action(添加刷新控件上的上拉动作回调方法)
 */
- (void)addNormalRickyRefreshHeaderViewWithCallBackAction:(void(^)())action;


/**
 添加一个普通的下拉刷新控件
 @param:action(添加刷新控件上的上拉动作回调方法)
 */
- (void)addNormalRickyRefreshFooterViewWithCallBackAction:(void(^)())action;

/**
 添加一个文字重绘的下拉加载控件
 @param: action (添加刷新控件的下拉动作的回调方法)
 */
- (void)addPullTextRickyRefreshHeaderViewWithPullText:(NSString *)pullText
                                        pullTextColor:(UIColor *)pullTextColor
                                         pullTextFont:(UIFont *)pullTextFont
                                       refreshingText:(NSString *)refreshingText
                                  refreshingTextColor:(UIColor *)refreshingTextColor
                                   refreshingTextFont:(UIFont *)refreshingTextFont
                                   withCallBackAction:(void(^)())action;

/**
 添加一个文字重绘的上拉加载控件
 @param: action (添加刷新控件的上拉动作的回调方法)
 */
- (void)addPullTextRickyRefreshFooterViewWithPullText:(NSString *)pullText
                                        pullTextColor:(UIColor *)pullTextColor
                                         pullTextFont:(UIFont *)pullTextFont
                                       refreshingText:(NSString *)refreshingText
                                  refreshingTextColor:(UIColor *)refreshingTextColor
                                   refreshingTextFont:(UIFont *)refreshingTextFont
                                   withCallBackAction:(void(^)())action;

/**
 添加一个动画下拉刷新控件（没有动画上拉加载控件）
 @param: action (添加刷新控件的下拉动作的回调方法)
 */
- (void)addGifRickyRefreshHeaderViewWithPlaceHolderImage:(UIImage *)image
                                     animationImageArray:(NSArray *)animationImage
                                                   title:(NSString *)title
                                      withCallBackAction:(void(^)())action;


/**
 完成刷新控件的刷新事件
 @param: completeType:刷新完成类型(1:RickyRefreshCompleteTypeSuccess 2:RickyRefreshCompleteTypeError 3:RickyRefreshCompleteTypeNoData)
 */
- (void)completeRickyRefreshHeaderWithCompleteType:(RickyRefreshCompleteType)completeType;

/**
 完成刷新控件的加载事件
 @param: completeType:刷新完成类型(1:RickyRefreshCompleteTypeSuccess 2:RickyRefreshCompleteTypeError 3:RickyRefreshCompleteTypeNoData)
 */
- (void)completeRickyRefreshFooterWithCompleteType:(RickyRefreshCompleteType)completeType;


@end
